package com.jyw.business.obstacles.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.jyw.common.annotation.Excel;
import com.jyw.common.core.domain.BaseEntity;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;

/**
 * 报障-电话盒子对象 obs_phone_box
 * 
 * @author system
 * @date 2023-08-22
 */
@Data
@TableName("obs_phone_box")
@ApiModel("报障-电话盒子实体")
@Builder
public class ObsPhoneBox
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @ApiModelProperty("${column.columnComment}")
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 主叫名称 */
    @ApiModelProperty("主叫名称")
    @Excel(name = "主叫名称")
    private String callAccept;

    /** 主叫名称 */
    @ApiModelProperty("主叫名称")
    @Excel(name = "主叫名称")
    private String callerIdName;

    /** 主叫号码，一般和caller_id_name一致，但是我们去掉线路前缀带的0，+86等 */
    @ApiModelProperty("主叫号码，一般和caller_id_name一致，但是我们去掉线路前缀带的0，+86等")
    @Excel(name = "主叫号码，一般和caller_id_name一致，但是我们去掉线路前缀带的0，+86等")
    private String callerIdNumber;

    /** 被叫号码 */
    @ApiModelProperty("被叫号码")
    @Excel(name = "被叫号码")
    private String destinationNumber;

    /** 话务发起时间 */
    @ApiModelProperty("话务发起时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "话务发起时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    /** 话务接听时间 */
    @ApiModelProperty("话务接听时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "话务接听时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date answeredTime;

    /** 话务结束时间 */
    @ApiModelProperty("话务结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "话务结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date overTime;

    /** 线路或者系统返回的状态，无实际意义 */
    @ApiModelProperty("线路或者系统返回的状态，无实际意义")
    @Excel(name = "线路或者系统返回的状态，无实际意义")
    private String status;

    /** 话务使用的线路 */
    @ApiModelProperty("话务使用的线路")
    @Excel(name = "话务使用的线路")
    private String gateWay;

    /** 录音的绝对地址 */
    @ApiModelProperty("录音的绝对地址")
    @Excel(name = "录音的绝对地址")
    private String recordingFileName;

    /** 自动外呼的任务ID号，如果是点击拨号则为空 */
    @ApiModelProperty("自动外呼的任务ID号，如果是点击拨号则为空")
    @Excel(name = "自动外呼的任务ID号，如果是点击拨号则为空")
    private String batchAccept;

    /** 转接的号码 */
    @ApiModelProperty("转接的号码")
    @Excel(name = "转接的号码")
    private String transNumber;

    /** 转接话务流水号 */
    @ApiModelProperty("转接话务流水号")
    @Excel(name = "转接话务流水号")
    private String otheraccept;

    /** 接通的号码 */
    @ApiModelProperty("接通的号码")
    @Excel(name = "接通的号码")
    private String otherStr;

    /** $column.columnComment */
    @ApiModelProperty("${column.columnComment}")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String orderNum;

}
